package com.molichuxing.services.infrastructure.dto.request.create;

import com.molichuxing.framework.dto.RequestRootDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * @Author: renzhengyu
 * @Description:
 * @Date: Created in 9:45 2019/9/26
 * @Modified By:
 **/
@Data
public class MaintenanceLogCreateDto  extends RequestRootDto {
    private static final long serialVersionUID = 5624126016766142965L;

    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Integer id;

    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private Long orderCode;

    /**
     * 车辆id
     */
    @ApiModelProperty(value = "车辆id")
    private Integer carId;


    /**
     * 用户类型（1：op，2：用户）
     */
    @ApiModelProperty(value = "用户类型（1：op，2：用户）")
    private Integer userType;

    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Integer userId;


    /**
     * 保养单号
     */
    @ApiModelProperty(value = "保养单号")
    private Integer maintenanceId;

    /**
     * 应保养里程
     */
    @ApiModelProperty(value = "应保养里程")
    private BigDecimal maintainableMileage;

    /**
     * 实际保养里程
     */
    @ApiModelProperty(value = "实际保养里程")
    private BigDecimal actualMaintainMileage;

    /**
     * 应保养日期
     */
    @ApiModelProperty(value = "应保养日期")
    private LocalDateTime maintainableDate;

    /**
     * 实际保养日期
     */
    @ApiModelProperty(value = "实际保养日期")
    private LocalDate actualMaintainDate;

    /**
     * 保养门店
     */
    @ApiModelProperty(value = "保养门店")
    private String storeName;

    /**
     * 保养次数
     */
    @ApiModelProperty(value = "保养次数")
    private Integer count;

    /**
     * 1：A类，2：B类
     */
    @ApiModelProperty(value = "1：A类，2：B类")
    private Integer type;

    /**
     * 保养卡图片url
     */
    @ApiModelProperty(value = "保养卡图片url")
    private String maintenanceUrl;

    /**
     * 结算单图片url
     */
    @ApiModelProperty(value = "结算单图片url")
    private String settlementUrl;

    /**
     * 提交用户ID
     */
    @ApiModelProperty(value = "提交用户ID")
    private Integer submitMemberId;

    /**
     * 提交时间
     */
    @ApiModelProperty(value = "提交时间")
    private LocalDateTime submitDate;

    /**
     * 采购日期
     */
    @ApiModelProperty(value = "采购日期")
    private LocalDateTime purchaseDate;


    /**
     * 审核日期
     */
    @ApiModelProperty(value = "审核日期")
    private LocalDateTime checkDate;

    /**
     * 状态（0：待审核，1：待保养，2：使用期，3：审核通过，4：审核驳回）
     */
    @ApiModelProperty(value = "状态（0：待审核，1：待保养，2：使用期，3：审核通过，4：审核驳回）")
    private Integer status;

    /**
     * 0：无，1：上传图片不清晰，2：上传保养卡信息不全，3：上传保养卡无授权店签字盖章默认为0
     */
    @ApiModelProperty(value = "0：无，1：上传图片不清晰，2：上传保养卡信息不全，3：上传保养卡无授权店签字盖章默认为0")
    private Integer rejectReason;

    /**
     * 操作方（1：op，2：经销商）
     */
    @ApiModelProperty(value = "操作方（1：op，2：经销商）")
    private Integer operationType;

    /**
     * 操作方
     */
    @ApiModelProperty(value = "操作方")
    private String operationName;

    /**
     * 操作方
     */
    private Integer operationId;
}
